Главная <-- Обзор платформы <-- Толковый словарь 1С:Предприятия 8 <-- A <-- Automation Client/Server (Automation Client/Server)
Automation Client/Server (Automation Client/Server)
Поддержка технологий Automation Server и Automation Client - это один из инструментов интеграции с другими программными системами.
Automation Server
Основное назначение Automation-сервера 1С:Предприятие 8 - управление приложением системы 1С:Предприятие 8 из других приложений и выполнение действий аналогичных интерактивным действиям.
Automation-сервер 1С:Предприятие 8 предоставляет доступ ко всем свойствам и методам своего глобального контекста, имеет дополнительные свойства и методы для выполнения действий, специфичных для работы в режиме Automation.
Для запуска системы 1С:Предприятие 8 в качестве Automation-сервера из внешнего приложения, выполняется следующая последовательность действий:
- создается COM-объект с идентификатором V82.Application;
- выполняется инициализация системы 1С:Предприятие 8 методом Connect();
- вызываются свойства и методы системы 1С:Предприятие 8 как Automation-сервера.
Пример
В качестве примера можно рассмотреть обращение к информационной базе 1С:Предприятия 8 из программы на языке MS Visual Basic. В данном примере запускается и инициализируется конфигурация 1С:Предприятие 8 с базой данных в каталоге c:\InfoBases\Trade. Далее в программе 1С:Предприятие 8 создается объект типа СправочникМенеджер.Товары и создается новая группа элементов с названием ***** Экспорт из Excel ******. Во вновь созданную группу каталога записываются данные из таблицы MS Excel.
Sub Excel_to_trade()
Dim trade As Object
Dim Элемент As ObjectSet trade = CreateObject("V82.Application") 'Создать Automation сервер
trade.Connect("File=""c:\InfoBases\Trade"";Usr=""Director"";") 'Соединиться с информационной базой
Set СправочникТоваров = trade.Справочники. Товары
Set ГруппаТоваров = СправочникТоваров.СоздатьГруппу()
ГруппаТоваров.Наименование = "***** Экспорт из Excel ******"
ГруппаТоваров.ЗаписатьN = 100 'Количество строк в документе
For Count = 1 To NSet Элемент = СправочникТоваров.СоздатьЭлемент()
Элемент.Наименование = Application.Cells(Count, 2).Value
Элемент.Розн_Цена = Application.Cells(Count, 3).Value
Элемент.Мел_Опт_Цена = Application.Cells(Count, 4).Value
Элемент.Опт_Цена = Application.Cells(Count, 5).Value
Элемент.Родитель = ГруппаТоваров.СсылкаЭлемент.Записать
Next Count
End Sub
Контекст исполнения
Объект Automation-сервер 1С:Предприятие 8 в качестве своих свойств может иметь:
- системные константы,
- значения заданных в конфигураторе объектов, доступ к которым осуществляется с помощью менеджеров (например, константы, перечисления, справочники, документы, журналы документов, отчеты, обработки, планы видов характеристик, планы счетов, планы видов расчета, регистры);
- переменные, объявленные в модуле приложения.
Automation-сервер 1С:Предприятие 8 в качестве своих методов может иметь:
- системные процедуры и функции;
- процедуры и функции модуля приложения и общих модулей, объявленные с ключевым словом Экспорт;
- два дополнительных метода - Connect() и NewObject().
Automation Client
Как и многие современные программные продукты, 1С:Предприятие 8 может выступать в роли клиентов Automation. Поэтому имеется возможность из системы 1С:Предприятие 8 обращаться к другой копии 1С:Предприятие 8 (например, к другой конфигурации) для обмена данными.
В качестве примера можно рассмотреть обращение к информационной базе 1С:Предприятия 8 из другой информационной базы 1С:Предприятия 8. В данном примере запускается и инициализируется конфигурация 1С:Предприятия 8 с базой данных в каталоге c:\InfoBases\Trade. Далее в этой базе, в справочнике Товары создается новая группа с наименованием *** Экспорт из другой базы 1С:Предприятия 8 ***, и эта группа записывается.
Полезные ссылки:
- Механизмы интеграции с другими системами,
- Википедия - OLE Automation.